home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Technotools
/
Technotools (Chestnut CD-ROM)(1993).ISO
/
os2tools
/
cpk2_099
/
cpk2_099.doc
< prev
Wrap
Text File
|
1991-10-01
|
10KB
|
241 lines
Oberon CommPak/2 Dynamic Link Library
Asychronous Communications Routine Library for use with TE/2
Version 0.99
Oberon Software
518 Blue Earth Street
Mankato, MN 56001
Voice Phone: 507/388-7001
BBS: 507/388-1154
MCI Mail: oberon/413-5847
GEnie Mail: B.FLOWERS
CIS: 72510,3500
September 28, 1991
-------------------------------------------------------------
Copyright 1991, Oberon Software, Mankato, MN - All Rights Reserved
-------------------------------------------------------------
This version of the file COMMPAK2.DLL is a replacement for the file
of the same name which is distributed with the Oberon Terminal
Emulator/2. The dynalink library contains the routines which TE/2
uses for its low and medium level access to the communication device,
terminal emulation, and file transfer protocols.
If you are currently using TE/2 version 1.10.C you must replace
your existing COMMPAK2.DLL with this file.
This version of COMMPAK2.DLL is NOT guaranteed to work with any
version of TE/2 prior to version 1.10.C. If you are using a version
of TE/2 prior to 1.10.C, you should obtain the latest version.
Please contact Oberon Software if you are unable to locate a copy.
Oberon Software will no longer officially support versions of TE/2
prior to Version 1.10.C nor versions of COMMPAK2.DLL prior to Version
0.99.
-------------------------------------------------------------
The CommPak/2 Dynamic Link Library is a shareware product of
Oberon Software. You may freely use it in conjunction with TE/2 with
no further registration commitment than is already implied by your
use of TE/2. If you are already a registered user of TE/2, use of
this file is completely free. If you have not registered TE/2, you
are urged to do so, but this file is considered to be part of the
shareware package and does not require its own separate registration.
Enhancements to this library will occur from time to time
independent of version releases of other Oberon Software products.
The most current version of this library, so long as it is compatible
with the current released version of TE/2, will always be available
on the Oberon User Support BBS (507/388-1154, HST). We will also
make sure that new releases of this library appear on GEnie,
Compuserve, BIX, and major BBSes around the world as they become
available.
-------------------------------------------------------------
INSTALLATION:
If you have already installed TE/2 version 1.10.C, simply locate
the file COMMPAK2.DLL on your hard disk and replace it with this copy
of that file. Please note that if TE/2 is currently running you must
exit TE/2 before copying the new file over the existing one. The
next time you start TE/2 the new dynamic link library will be used.
If you have not installed TE/2 version 1.10.C, please follow the
installation instructions contained in the TE/2 documentation and
then replace COMMPAK2.DLL as outlined in the previous paragraph.
-------------------------------------------------------------
WHAT'S NEW?
File Transfer Protocols
=======================
All of the file transfer protocols have been at least reworked;
YModem upload, ASCII upload, and all of ZModem have been completely
rewritten from the ground up based on the original ZModem spec.
Thanks to Chris Laforet for his collaborative assistance with the
ZModem re-write!
All of the protocols, and specifically the batch protocols,
YModem(g) and ZModem have been made completely HPFS aware (see notes
below).
VT100
=====
The VT100 emulation has under gone another round of enhancements
and various problems with the screen handling have been corrected.
Extended Hardware Buffering
===========================
Support for Extended Hardware Buffering has been added to the DLL
via a new entry point in the low-level CommXXX() API. The protocols
will make use of this feature if possible, TE/2 will also in its next
release.
HPFS Awareness
==============
As mentioned, all of the protocols are longname aware and will
accept any legal OS/2 filename which is legal on the target disk.
The single file transfers assume that the user knows what s/he's
doing and will not alter a filename that has been entered. In this
context, CIS B+ is categorized as a single file transfer because the
user names each file individually.
The batch protocols (Y and ZModem) now use DosFindFirst2() for file
searches and will "find" files with long names while expanding wild
card specs. When Y or ZModem receives a file name from the remote
sender, it is verified and possibly modified to make it legal for the
target drive. The following algorithm is used:
1) In the process of removing an incoming path from the filename,
the character '/' is treated identically to the '\'.
2) If the first character of the filename is '"', the quote is
removed and the filename is parsed up to the next quote char-
acter or end of string (whichever comes first).
3) Any '*' or '?' characters in the name are replaced with '$'.
4) Any of the characters '|', '<', '>', comma, ':', and embedded
'"' characters are replaced with '!'.
5) The name is checked for validity on the target disk, if the
target is HPFS, it will at this point be valid and no further
processing is required.
6) If the name is not valid at this point, the current name will
be preserved and saved in the .LONGNAME EA for the resulting
file.
7) The characters '[', ']', '+', '=', and ';' are replaced with
'!'; all '.' characters in the name, except for the final one,
are replaced with '_' (if the name begins with '.', this dot
is changed to '@' instead).
8) Finally, the filename is made into an 8.3 filename by
truncating the portions before and after the dot.
9) If the name still not valid for whatever reason, the file is
renamed "transfer.fil".
-------------------------------------------------------------
Notes Regarding TE2.INI Settings
================================
The following settings in TE2.INI are no longer used by the file
transfer protocols:
XMThreshold XMPacing XMRelax
YMThreshold YMPacing YMRelax
ZMThreshold ZMPacing ZMRelax
ZMTxFrameLen ZMTxWindow
BPThreshold BPPacing BPRelax
TE/2 will still accept the entries for these values in the TE2.INI
file but they will have no effect on the behavior of the protocols.
In the "AsciiUL" setting in TE2.INI, the meanings of the last two
numeric parameters in the list have subtly changed. They've been
referred to as "ReadTimeout" and "WriteTimeout" however they are now
both Write timeouts in essence, the first will be the timeout value
the ASCII upload routine will use for reading arbitrary characters
from the data stream and the second will be the amount of time it
waits for the prompt character before giving up. Both are expressed
in milliseconds.
General Notes Regarding ASCII Upload
====================================
ASCII upload is really quite sensitive to the various settings.
Setting the character timeout to zero and the prompt timeout to 5000
seems to be fairly applicable in most situations (GEnie pushes the
five seconds sometimes though getting you back to a line prompt!).
On Maximus, uploading to the line editor, you can leave the pacings
set to zero but uploading to Max's full screen editor (why would
you?) you need to set character pacing rather high. Magnum's line
editor also requires a pretty hefty character pacing (~25ms). MCI
Mail and CIS both seemed to work pretty much as expected. On Max,
Magnum, and other BBSes that have line editors that do word wrap,
it's a good idea not to upload stuff that will wrap - it get's the
wait-for-prompt logic out of synch.
-------------------------------------------------------------
We intend to document the API (Application Program Interface) for
CommPak/2 and make it available to interested parties. If you are
interested in such a toolkit, fell free to contact Oberon Software
via the Oberon BBS for information.
-------------------------------------------------------------
The code contained in the accompanying file COMMPAK2.DLL ("the
software") and this document are:
Copyright (c) 1990-1991
by Oberon Software
518 Blue Earth Street
Mankato, MN 56001 USA
Portions of the ZModem code are:
Copyright (c) 1991
by Chris Laforet and Chris Laforet Software
Graham, NC
-------------------------------------------------------------
Use of this software for any purpose whatsoever constitutes your
unqualified acceptance of the following statements.
The author makes no warranty or representation that the software will
be error free. The author disclaims any warranties, either express or
implied, including but not limited to any implied warranty of
merchantability or fitness for any particular purpose.
The user agrees to take full responsibility for the selection of and
any use whatsoever made of the software.
IN NO EVENT WILL THE AUTHOR BE LIABLE FOR ANY DAMAGES WHATSOEVER
(INCLUDING WITHOUT LIMITATION DAMAGES FOR LOSS OF BUSINESS PROFITS,
BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION OR THE LIKE)
ARISING OUT OF THE USE OF, INTERRUPTION IN THE USE OF, OR INABILITY
TO USE THIS SOFTWARE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF ANY
POSSIBILITY OR LIKELIHOOD OF SUCH DAMAGES.